import { useI18n } from '/@/hooks/web/useI18n';
import { BasicColumn, BasicTableProps, FormProps } from '/@/components/Table';
import { basCusKpinfoListData } from '/@/api/bas/cus/basCusKpinfo';

const { t } = useI18n('bas.cus.basCusKpinfo');

const modalProps = {
  title: t('开票信息选择'),
};

const searchForm: FormProps = {
  baseColProps: { lg: 6, md: 8 },
  labelWidth: 80,
  schemas: [
    {
      label: t('客户'),
      field: 'cusCode',
      component: 'Input',
      ifShow: false,
    },
    // {
    //   label: t('客户名称'),
    //   field: 'basCus.name',
    //   component: 'Input',
    // },
    
    {
      label: t('名称'),
      field: 'cname',
      component: 'Input',
    },
    {
      label: t('抬头类型'),
      field: 'ctype',
      component: 'Select',
      componentProps: {
        dictType: 'cus_fp_type',
        allowClear: true,
      },
    },
    // {
    //   label: t('联系方式'),
    //   field: 'contactInfo',
    //   component: 'Input',
    // },
    // {
    //   label: t('税号'),
    //   field: 'dutyNo',
    //   component: 'Input',
    // },
    // {
    //   label: t('开户银行'),
    //   field: 'bankName',
    //   component: 'Input',
    // },
    // {
    //   label: t('银行帐号'),
    //   field: 'bankCode',
    //   component: 'Input',
    // },
    // {
    //   label: t('单位号码'),
    //   field: 'dwNo',
    //   component: 'Input',
    // },
    // {
    //   label: t('单位地址'),
    //   field: 'dwAddr',
    //   component: 'Input',
    // },
    // {
    //   label: t('是否默认'),
    //   field: 'bdef',
    //   component: 'Select',
    //   componentProps: {
    //     dictType: 'sys_yes_no',
    //     allowClear: true,
    //   },
    // },
  ],
};

const tableColumns: BasicColumn[] = [
  // {
  //   title: t('客户'),
  //   dataIndex: 'cusCode',
  //   key: 'a.cus_code',
  //   sorter: true,
  //   width: 230,
  //   align: 'left',
  //   slot: 'firstColumn',
  // },
  // {
  //   title: t('客户名称'),
  //   dataIndex: 'basCus.name',
  //   key: 'cus.name',
  //   sorter: true,
  //   width: 200,
  //   align: 'left',
  // },
  {
    title: t('抬头类型'),
    dataIndex: 'ctype',
    key: 'a.ctype',
    sorter: true,
    width: 130,
    align: 'center',
    dictType: 'cus_fp_type',
  },
  {
    title: t('名称'),
    dataIndex: 'cname',
    key: 'a.cname',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('联系方式'),
    dataIndex: 'contactInfo',
    key: 'a.contact_info',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('税号'),
    dataIndex: 'dutyNo',
    key: 'a.duty_no',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('开户银行'),
    dataIndex: 'bankName',
    key: 'a.bank_name',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('银行帐号'),
    dataIndex: 'bankCode',
    key: 'a.bank_code',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('单位号码'),
    dataIndex: 'dwNo',
    key: 'a.dw_no',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('单位地址'),
    dataIndex: 'dwAddr',
    key: 'a.dw_addr',
    sorter: true,
    width: 130,
    align: 'left',
  },
  {
    title: t('是否默认'),
    dataIndex: 'bdef',
    key: 'a.bdef',
    sorter: true,
    width: 130,
    align: 'center',
    dictType: 'sys_yes_no',
  },
];

const tableProps: BasicTableProps = {
  api: basCusKpinfoListData,
  beforeFetch: (params) => {
    params['isAll'] = true;
    return params;
  },
  columns: tableColumns,
  formConfig: searchForm,
  rowKey: 'id',
};

export default {
  modalProps,
  tableProps,
  itemCode: 'cusCode',
  itemName: 'cname',
};
